package com.ruoyi.safe.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.safe.domain.vo.BizProjectCheckRecordVO;
import com.ruoyi.safe.domain.vo.BizSafeAttachBizInfo;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.NoArgsConstructor;

import java.util.Date;
import java.util.List;

/**
 * 安全相册对象 biz_safe_attach
 *
 * @author ruoyi
 * @date 2023-11-20
 */
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class BizSafeAttach extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 编号 */
    private Long id;

    /** 编号ID集合 */
    private List<Long> ids;

    /** 项目ID */
    @Excel(name = "项目ID")
    private Long projectId;

    /** 业务ID */
    @Excel(name = "业务ID")
    private Long bizId;
    /** 业务信息 */
    private BizSafeAttachBizInfo bizSafeAttachBizInfo;

    /** 业务ID集合 */
    private List<Long> bizIds;

    /** 桶名称 */
    @Excel(name = "桶名称")
    private String bucket;

    /** 附件名称 */
    @Excel(name = "附件名称")
    private String name;

    /** 附件类型 */
    @Excel(name = "附件类型")
    private String type;

    /** 大小 */
    @Excel(name = "大小")
    private Long size;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startTime;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endTime;

    public void setEndTime(Date endTime) {
        if(endTime != null){
            this.endTime = DateUtils.addDays(endTime,1);
        }
    }

    //视图属性
    /**
     * 附件访问地址
     */
    private String url;
    /**
     * 文件id
     */
    private String fileId;
}
